package com.zzl.bonds.ticket.dto;

import com.zzl.apidoc.annotation.ApidocModel;
import com.zzl.apidoc.annotation.ApidocModelProperty;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * 转让申请单
 *
 * @author sunpp
 * @date 2022-02-16 11:14:07
 */
@Data
@ApidocModel
@SuppressWarnings("javadoc")
public class TicketransferAddDto implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApidocModelProperty(description = "母单票据id", example = "")
    @NotEmpty(message = "母单票据id不能为空")
    private String parentTicketId;
    @NotNull(message = "转让金额不能为空")
    @ApidocModelProperty(description = "转让金额", example = "")
    private Double transferAmount;
    @NotNull(message = "签收方id不能为空")
    @ApidocModelProperty(description = "收单收id", example = "")
    private String receiveEnterpriseId;

    @NotEmpty(message = "签收方企业名称不能为空")
    @ApidocModelProperty(description = "签收方企业名称", example = "")
    private String receiveEnterpriseName;

    @ApidocModelProperty(description = "签收方企业社会统一代码")
    private String receiveCreditCode;

    @ApidocModelProperty(description = "备注", example = "")
    private String receiveRemark;

    @ApidocModelProperty(description = "基础交易合同编号")
    private String contractNo;

//    @Size(min = 1, message = "转让凭证信息不能为空")
    @ApidocModelProperty(description = "合同信息", example = "")
    private List<TicketDataTransferAddDto> proofList = new ArrayList<>();

    //@Size(min = 1, message = "开立发票信息不能为空")
    @ApidocModelProperty(description = "转让发票信息", example = "")
    private List<TicketDataTransferAddDto> invoiceList = new ArrayList<>();

}
